#!/usr/bin/env python

wrkx86_annotations = {
    #('_PEB', 'FlsListHead'): ,
    #('_RTL_CRITICAL_SECTION_DEBUG', 'ProcessLocksList'): ,
    #_KPROCESS -> _SINGLE_LIST_ENTRY; # SwapListEntry
    #_KTHREAD -> _SINGLE_LIST_ENTRY; # SwapListEntry
#    ('_CM_KEY_BODY', 'KeyBodyList'): '_CM_KEY_BODY',
#    ('_CM_KEY_CONTROL_BLOCK', 'FreeListEntry'): '_CM_KEY_CONTROL_BLOCK',
#    ('_CM_KEY_CONTROL_BLOCK', 'KeyBodyListHead'): '_CM_KEY_BODY',
#    ('_CM_KEY_SECURITY_CACHE', 'List'): '_CM_KEY_SECURITY_CACHE',
    ('_CM_NOTIFY_BLOCK', 'HiveList'): ('_CM_NOTIFY_BLOCK', 'HiveList'),
#    ('_CM_NOTIFY_BLOCK', 'PostList'): ('_CM_POST_BLOCK', 'NotifyList'),
#    ('_CM_POST_BLOCK', 'CancelPostList'): ('_CM_POST_BLOCK', 'CancelPostList'),
#    ('_CM_POST_BLOCK', 'NotifyList'): ('_CM_POST_BLOCK', 'NotifyList'),
#    ('_CM_POST_BLOCK', 'ThreadList'): ('_CM_POST_BLOCK', 'ThreadList'),
    ('_CM_POST_KEY_BODY', 'KeyBodyList'): ('_CM_POST_KEY_BODY', 'KeyBodyList'),
    ('_DISPATCHER_HEADER', 'WaitListHead'): ('_KWAIT_BLOCK', 'WaitListEntry'),
#    ('_EJOB', 'JobLinks'): '_EPROCESS',
#    ('_EJOB', 'JobSetLinks'): '_EJOB',
#    ('_EJOB', 'ProcessListHead'): '_EPROCESS',
    ('_EPROCESS', 'ActiveProcessLinks'): ('_EPROCESS', 'ActiveProcessLinks'),
    ('_EPROCESS', 'JobLinks'): ('_EPROCESS', 'JobLinks'),
    ('_EPROCESS', 'MmProcessLinks'): ('_EPROCESS', 'MmProcessLinks'),
    ('_EPROCESS', 'SessionProcessLinks'): ('_EPROCESS', 'SessionProcessLinks'),
    ('_EPROCESS', 'ThreadListHead'): ('_ETHREAD', 'ThreadListEntry'),
#    ('_EPROCESS_QUOTA_BLOCK', 'QuotaList'): '_EPROCESS_QUOTA_BLOCK',
#    ('_ERESOURCE', 'SystemResourcesList'): '_ERESOURCE',
    ('_ETHREAD', 'ActiveTimerListHead'): ('_ETIMER', 'ActiveTimerListEntry'),
    ('_ETHREAD', 'IrpList'): ('_IRP', 'ThreadListEntry'),
#    ('_ETHREAD', 'KeyedWaitChain'): '_ETHREAD',
#    ('_ETHREAD', 'LpcReplyChain'): '_ETHREAD',
#    ('_ETHREAD', 'PostBlockList'): ('_CM_POST_BLOCK', 'ThreadList'),
    ('_ETHREAD', 'ThreadListEntry'): ('_ETHREAD', 'ThreadListEntry'),
    ('_ETIMER', 'ActiveTimerListEntry'): ('_ETIMER', 'ActiveTimerListEntry'),
    ('_ETIMER', 'WakeTimerListEntry'): ('_ETIMER', 'WakeTimerListEntry'),
    ('_HANDLE_TABLE', 'HandleTableList'): ('_HANDLE_TABLE', 'HandleTableList'),
#    ('_IO_TIMER', 'TimerList'): '_IO_TIMER',
    ('_IRP', 'ThreadListEntry'): ('_IRP', 'ThreadListEntry'),
#    ('_KAPC', 'ApcListEntry'): '_KAPC',
#    ('_KDEVICE_QUEUE', 'DeviceListHead'): '_KDEVICE_QUEUE_ENTRY',
#    ('_KDPC', 'DpcListEntry'): '_KDPC',
    ('_KMUTANT', 'MutantListEntry'): ('_KMUTANT', 'MutantListEntry'),
    ('_KPROCESS', 'ProcessListEntry'): ('_KPROCESS', 'ProcessListEntry'),
#    ('_KPROCESS', 'ProfileListHead'): '_KPROFILE',
    ('_KPROCESS', 'ReadyListHead'): ('_KTHREAD', 'WaitListEntry'),
    ('_KPROCESS', 'ThreadListHead'): ('_KTHREAD', 'ThreadListEntry'),
#    ('_KPROFILE', 'ProfileListEntry'): '_KPROFILE',
#    ('_KQUEUE', 'EntryListHead'): '_KQUEUE',
    ('_KQUEUE', 'ThreadListHead'): ('_KTHREAD', 'QueueListEntry'),
    ('_KTHREAD', 'MutantListHead'): ('_KMUTANT', 'MutantListEntry'),
    ('_KTHREAD', 'QueueListEntry'): ('_KTHREAD', 'QueueListEntry'),
    ('_KTHREAD', 'ThreadListEntry'): ('_KTHREAD', 'ThreadListEntry'),
#    ('_KTHREAD', 'WaitListEntry'): '_KTHREAD',
#    ('_KTIMER', 'TimerListEntry'): '_KTIMER',
    ('_KWAIT_BLOCK', 'WaitListEntry'): ('_KWAIT_BLOCK', 'WaitListEntry'),
    ('_MMSUPPORT', 'WorkingSetExpansionLinks'): ('_MMSUPPORT', 'WorkingSetExpansionLinks'),
    ('_PEB_LDR_DATA', 'InInitializationOrderModuleList'): ('_PEB_LDR_DATA', 'InInitializationOrderModuleList'),
    ('_PEB_LDR_DATA', 'InLoadOrderModuleList'): ('_PEB_LDR_DATA', 'InLoadOrderModuleList'),
    ('_PEB_LDR_DATA', 'InMemoryOrderModuleList'): ('_PEB_LDR_DATA', 'InMemoryOrderModuleList'),
}
